Regenerative current limiting of DC machines

ABSTRACT

Technical solutions are described for a control system that includes a current command module configured to receive a torque command and output a current command for controlling a direct current (DC) motor, and a regenerative current limiting module configured to receive a regenerative current limit as an input and actively compute a motor current limit based on the regenerative current limit, the regenerative current limiting module configured to limit the current command based on the motor current limit.

BACKGROUND

The present invention relates to methods and systems for controlling ormanaging DC machines, and more particularly to methods and systems forlimiting regenerative current of DC machines, and particularly permanentmagnet DC (PMDC) machines.

Electrical power steering (EPS) systems use an electric motor as anactuator to provide assist to a driver while steering a vehicle and/orto provide vehicle control. Brushed DC machines are widely used in theElectric Power Steering (EPS) industry for low-cost applications andplatforms. Electric drive systems employing such machines require fewersensors and low-cost electronic circuitry and are able to deliver goodperformance through the entire operating space.

In order to protect the voltage source (e.g., a car battery) to themotor control system, a voltage versus supply current limit is typicallyimposed. In addition, the maximum supply current that can be suppliedback to battery, i.e. regenerative current, is also limited. This may bein the form of a table calibrated offline or an online limit that issent to the motor control system. Given this supply and regenerativecurrent limits, the motor current command must be modified in order toensure that the system does not draw any more current than specified atthe cost of reduced torque capability, so that the voltage source isprotected.

SUMMARY

According to one or more embodiments a control system includes a currentcommand module configured to receive a torque command and output acurrent command for controlling a direct current (DC) motor, and aregenerative current limiting module configured to receive aregenerative current limit as an input and actively compute a motorcurrent limit based on the regenerative current limit, the regenerativecurrent limiting module configured to limit the motor current commandbased on the regenerative current limit based motor current limits.

According to one or more embodiments a method for controlling a directcurrent (DC) motor includes receiving a torque command and outputting acurrent command for controlling the DC motor. The method furtherincludes receiving a regenerative current limit as an input. The methodfurther includes actively computing, by a regenerative current limitingmodule, a motor current limit based on the regenerative current limit.The method further includes limiting the motor current command based onthe motor current limit.

According to one or more embodiments an electrical power steering systemincludes a direct current (DC) motor, a current command module thatreceives a torque command and output a current command for controllingthe DC motor, and a regenerative current limiting module. The currentlimiting module receives a regenerative current limit as an input andactively compute a motor current limit based on the regenerative currentlimit, and further limits the motor current command based on the motorcurrent limit.

These and other advantages and features will become more apparent fromthe following description taken in conjunction with the drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

The subject matter which is regarded as the invention is particularlypointed out and distinctly claimed in the claims at the conclusion ofthe specification. The foregoing and other features, and advantages ofthe invention are apparent from the following detailed description takenin conjunction with the accompanying drawings in which:

FIG. 1 is a functional block diagram illustrating a vehicle including asteering control and/or assistance system in accordance with anembodiment of the invention;

FIG. 2 is a schematic illustrating components, modules and functions ofa DC motor control system in accordance with an embodiment of theinvention;

FIG. 3 depicts aspects of a current capability limiting method that canbe performed by the motor control system of FIG. 2; and

FIG. 4 depicts an example of a power flow diagram of a DC motor controlsystem;

FIG. 5 depicts aspects of a regenerative current limiting method thatcan be performed by a motor control system;

FIG. 6 depicts example graphs of regenerative current limit valuesaccording to one or more embodiments; and

FIG. 7 depicts an example system for limiting regenerative currentaccording to one or more embodiments.

FIG. 8 depicts an example system for limiting regenerative currentaccording to one or more embodiments.

FIG. 9 depicts an example system for limiting regenerative currentaccording to one or more embodiments.

DETAILED DESCRIPTION

The following description is merely exemplary in nature and is notintended to limit the present disclosure, application, or uses. Itshould be understood that throughout the drawings, correspondingreference numerals indicate like or corresponding parts and features.

Referring now to FIG. 1, where the invention will be described withreference to specific embodiments without limiting same, an embodimentof a vehicle 10 including a steering system 12 such as an electricalpower steering (EPS) and/or driver assistance system is illustrated. Invarious embodiments, the steering system 12 includes a handwheel 14coupled to a steering shaft 16. In the embodiment shown, the steeringsystem 12 is an electric power steering (EPS) system that furtherincludes a steering assist unit 18 that couples to the steering shaft 16of the steering system 12 and to tie rods 20, 22 of the vehicle 10. Thesteering assist unit 18 includes, for example, a steering actuator motor19 (e.g., electrical motor) and a rack and pinion steering mechanism(not shown) that may be coupled through the steering shaft 16 to thesteering actuator motor and gearing. During operation, as the handwheel14 is turned by a vehicle operator, the motor of the steering assistunit 18 provides the assistance to move the tie rods 20, 22 which inturn moves steering knuckles 24, 26, respectively, coupled to roadwaywheels 28, 30, respectively of the vehicle 10.

The actuator motor 19 is a direct current (DC) electric machine ormotor. In one embodiment, the motor 19 is a brushed DC motor. Thebrushed DC motor includes a stator and a rotor. The stator includes abrush housing having a plurality of circumferentially spaced brushesdisposed about a commutator, each brush having a contact face that is inelectrical contact with the commutator. Although embodiments describedherein are applied to a permanent magnet brushed DC motor, they are notso limited and may be applied to any suitable DC machine.

As shown in FIG. 1, the vehicle 10 further includes various sensors thatdetect and measure observable conditions of the steering system 12and/or of the vehicle 10. The sensors generate sensor signals based onthe observable conditions. In the example shown, sensors 31 and 32 arewheel speed sensors that sense a rotational speed of the wheels 28 and30, respectively. The sensors 31, 32 generate wheel speed signals basedthereon. In other examples, other wheel speed sensors can be provided inaddition to or alternative to the sensors 31 and 32. The other wheelspeed sensors may sense a rotational speed of rear wheels 34, 36 andgenerate sensor signals based thereon. As can be appreciated, otherwheel sensors that sense wheel movement, such as wheel position sensors,may be used in place of the wheel speed sensors. In such a case, a wheelvelocity and/or vehicle velocity or speed may be calculated based on thewheel sensor signal. In another example, the sensor 33 is a torquesensor that senses a torque placed on the handwheel 14. The sensor 33generates torque signals based thereon. Other sensors may includesensors for detecting the position (motor position) and rotational speed(motor velocity or motor speed) of the steering actuator motor or othermotor associated with the steering assist unit 18.

A control module 40 controls the operation of the steering system 12based on one or more of the sensor signals and further based on thesteering control systems and methods of the present disclosure. Thecontrol module may be used as part of an EPS system to provide steeringassist torque and/or may be used as a driver assistance system that cancontrol steering of the vehicle (e.g., for parking assist, emergencysteering control and/or autonomous or semi-autonomous steering control).

Aspects of embodiments described herein may be performed by any suitablecontrol system and/or processing device, such as the motor assist unit18 and/or the control module 40. In one embodiment, the control module40 is or is included as part of an autonomous driving system.

A processing or control device, such as the control module 40, isconfigured to control a DC motor such as a brushed DC motor (e.g., themotor 19) according to a control method. Aspects of the control methodinclude executing an algorithm for actively limiting the regenerativecurrent draw based on operating conditions of the DC motor and/or othercomponents of a system that includes a DC motor (e.g., an EPS system).For example, in order to protect the voltage source to the motor controlsystem, which in the case of EPS is a car battery, a voltage versussupply current limit is typically imposed. In addition, the maximum ofsupply current that can be supplied back to battery, i.e. regenerativecurrent, is also limited. These limits may be imposed in the form of atable calibrated offline or determined online, that is dynamically,based on vehicle operating conditions that are sent to the motor controlsystem in the form of one or more control signals. Given theregenerative current limit, the technical solutions described hereinmodify the motor current command to ensure that the motor control systemdoes not send back any more current to the power source than specified.In one or more examples, such limits are at the cost of reduced torquecapability, so that the battery is protected. Further, in case thevehicle, a motor control system facilitating limits on regenerativecurrent enables OEMs to manage vehicle power flow from one or morevehicle subsystems drawing power from the power source. The technicalsolutions herein thus facilitate a consolidated active power managementfunction that can ensure the regenerative current limiting for brushedDC machines under all operating conditions. The current limit can be acalibration, a continuously changing signal, or a function of othersignals (such as battery voltage).

The technical solutions described herein facilitate actively limitingthe regenerative current supplied back to the voltage source based onthe operating conditions of the motor control system. The regenerativecurrent limit is translated to equivalent motor current limit curves bysolving the power equations of the voltage loop. Due to the mathematicalcomplexities arising from the unique challenges of active regenerativecurrent limiting, additional operations are described that ensure stableoperation of the limiting algorithm. The independently determined motorcurrent limits for constraining the regenerative currents may be usedalong with the motor current limits computed for capability, externalmotor current as well as supply current limiting to be able tosimultaneously manage all the power management requirements. Further,the technical solutions facilitate limiting the regenerative current fora simplified brush drop model, which lends itself well to lowerimplementation throughput requirements.

Thus, in one or more examples, a regenerative current limit istranslated to equivalent motor current limit values or curves by solvingpower equations of a voltage loop defined by a motor control system andthe DC motor. Thereafter, the motor current limits are additionallyimposed on the system using an algorithm for motor current limiting. Thecontrol method provides an added function for active supply currentlimiting, which determines the motor current limits for ensuring thatsupply current limits are met. The motor current limits generated bythis algorithm may serve as additional limits to other limiting schemespresently used for DC machines.

Referring now to FIG. 2, a dataflow diagram illustrates an exemplaryembodiment of a control device or system 50 for controlling a DC motor,such as a brushed DC motor. The control system 50, in one embodiment, isor includes an EPS control system such as the control module 40 ofFIG. 1. In various embodiments, the control device or system (e.g., themodule 40) can include one or more sub-modules and datastores. As usedherein the terms module and sub-module refer to an application specificintegrated circuit (ASIC), an electronic circuit, a processor (shared,dedicated, or group) and memory that executes one or more software orfirmware programs, a combinational logic circuit, and/or other suitablecomponents that provide the described functionality. Inputs to thecontrol module 40 can be generated from sensors such as the sensors 31,32, 33 (FIG. 1) of the vehicle 10 (FIG. 1), can be received from othercontrol modules (not shown) within the vehicle 10 (FIG. 1), can bemodeled, and/or can be predefined.

In the example of FIG. 2, the control system 50 includes various modulesor sub-modules such as a current command module 52 that receives atorque command (T_(c)) and outputs a current command (i_(r)) to acurrent regulator 54 used for controlling the currents of a brushed DCmotor 56. The current command module 52 includes a torque envelopelimiting module 58 that outputs an enveloped torque command (T_(env)) toa current command calculation module 60. A current command (i_(r)) issent from the current command module 52 to the current regulator 54 thatapplies a voltage to the DC motor 56 based on the current command. Forexample, the current regulator 54 generates a voltage command (v) usingthe current command, which can be converted to a pulse width modulation(PWM) signal that is transmitted to the DC motor via a power convertersuch as an H-bridge. A current measurement module 62 measures thecurrent produced by the DC motor 56, i.e., a motor current (i_(a)), andoutputs a measured current value (i_(m)) to the current regulator 54.

In one embodiment, the control system 50 includes a current capabilitylimiter or current capability limiting module 64 that receives anexternal motor current limit (i_(lim)), along with the other signals,and limits the enveloped torque command based on the current limiti_(lim). The current limiting module 64 can be connected to or includefunctionality that further limits the enveloped torque command to thecapability limit of the motor 56.

FIG. 3 shows an embodiment of the current capability limiting module 64.In this embodiment, the current capability limiting module 64 receives acurrent command (i_(r)*) from the current command calculation module 60and an externally provided current limit (i_(lim)), and first limits thecurrent to a first limited current value (i_(rext)) as shown by block 66(e.g., via a current limiting module that is part of or connected to thecurrent capability limiting module 64). The current command (i_(r)*) maybe first limited to the externally provided limit (i_(lim)), which mayin some instances be a calibration, based on the following logic:

$i_{rext} = \left\{ \begin{matrix}{{{\sigma\left( i_{r}^{*} \right)}{\min\left( {{i_{r}^{*}},i_{\lim}} \right)}},{{i_{r}^{*}} \geq i_{\lim}}} \\{i_{r}^{*},{{i_{r}^{*}} < i_{\lim}}}\end{matrix} \right.$

The limited current value (i_(rext)) is then compared with capabilitycurves of the DC machine or motor and further limited, as shown by block68, to ensure that the control system 50 determines optimal currentcommands based on the operating conditions of the machine. Note that thesteady state voltage-current equation is used for capabilitycomputation.

In one embodiment, the current capability module 64 (or other suitableprocessor) is configured to further limit the current command usingmotor current limits that are computed based on electrical properties ofthe control system 50 and the motor 56. When an additional supplycurrent limit is imposed on the system 50, the corresponding motorcurrent limits to ensure that the provided supply current (I_(S)) doesnot exceed the specified limit can be determined online. The power flowof a motor control system (e.g., the system 50) for a brushed DC motor(e.g., the motor 56) control system is shown in FIG. 4. The system 50and the motor 56 define a voltage loop that includes the voltage acrossa battery and the voltage across the motor 56.

For a given battery voltage (V_(BATT)), and a measurement of the voltageinput (V_(ECU)) to the system 50, the power equations may be solved toobtain motor current limits. A supply current I_(S) is related to theregenerative current I_(B) as follows.I _(b) =−I _(S)

Further, the voltage circuit model considering the battery may bemathematically expressed as follows.V _(ECU) =V _(BATT) −R _(BH) I _(S)where R_(BH) represents the battery harness resistance. The powerbalance equation of this system may be written as follows.V _(ECU) I _(S) −R _(c) I _(S) ² =P _(e) −V _(ECU) I _(b) −R _(c) I _(b)² =P _(e)where R_(c) is the controller input resistance and P_(e) is theelectrical power input to the motor control system (or drawn by themotor control system). The expression for P_(e) may be represented asfollows:

$\quad\begin{matrix}{P_{e} = {v_{m}i_{m}}} \\{{= {{R_{m}i_{m}^{2}} + {K_{e}\omega_{m}i_{m}} + {v_{B}i_{m}}}},}\end{matrix}$where v_(m) is the motor voltage, i_(m) is the motor current, R_(m) isthe electrical resistance of the motor circuit (e.g., including themotor 56 and power converter circuitry, not shown), ω_(m) is therotational speed of the motor 56, and v_(B) is the brush drop voltage.K_(e) is a motor voltage or torque constant.

In the above equations, the brush drop voltage (v_(B)) is a nonlinearfunction of the current (i_(m)) and is mathematically expressed asfollows:

$v_{B} = {{\sigma\left( i_{m} \right)}{V_{0}\left( {1 - e^{\frac{- {i_{m}}}{I_{0}}}} \right)}}$where V₀ and I₀ represent the brush drop voltage and current variables,respectively. Thus, the expanded power equation may be written asfollows.

R_(m)i_(m)² + K_(e)ω_(m)i_(m) + v_(B)(i_(m))i_(m) = −V_(ECU)I_(b) − R_(c)I_(b)²${{R_{m}i_{m}^{2}} + {K_{e}\omega_{m}i_{m}} + {{\sigma\left( i_{m} \right)}{V_{0}\left( {1 - e^{\frac{- {i_{m}}}{I_{0}}}} \right)}i_{m}}} = {{{- V_{ECU}}I_{b}} - {R_{c}I_{b}^{2}}}$

Thus, given a regenerative current limit (I_(blim)), the roots of theaforementioned equation may be determined. If the final motor currentsare maintained within the resultant roots, the regenerative current islower than the specified limit. Hence, the roots of the followingfunction are to be determined to determine the regenerative currentlimits.f(i _(m))=R _(m) i _(m) ² +K _(e)ω_(m) i _(m) +v _(B)(i _(m))i _(m) +V_(ECU) I _(blim) +R _(c) I _(blim) ²=0

It can be seen that if motor current i_(m) and motor velocity ω_(m) havethe same sign, the above equation has no solution. This implies that theregenerative current limiting can be achieved without modifying motorcurrents in quadrants I and III of the current-speed plane. Thus, theequation only is solved when the region of operation is in quadrants IIand IV, that too only in particular predetermined regions.

FIG. 5 illustrates a flowchart of an example method for limiting theregenerative current limit for a motor control system according to oneor more embodiments. The method includes determining a motor speedthreshold for enabling the regenerative current limiting, as shown atblock 510. In one or more examples, the threshold may be a preconfiguredvalue. The method further includes checking if the present motor speedexceeds the motor speed threshold, as shown at block 520. If the presentmotor speed exceeds the threshold(s), the calculation for regenerativecurrent limit is enabled, as shown at block 530. Alternatively, if thepresent motor speed is within the threshold values, the calculation fordetermining regenerative current limit to restrict the regenerativecurrent of the motor control system is not performed, as shown at block530. Note that the comparison of the speed with the threshold valuefacilitates reducing the computation burden. Alternatively, or inaddition, the regenerative current based motor current limits may becomputed, where the region in which no solution exists, the motorcurrent limits may be set to very high value such that no modificationof the original motor current command occurs.

The calculated regenerative current limit based motor current limits arecompared with the base motor current as shown at block 550. Further, anarbitrated motor current command is sent to the current capabilitylimiting module 64, which generates the current command i_(r) for thecurrent regulator 54.

It should be noted that in one or more examples, the method includes thecomputing of the desired motor current limit values irrespective of themotor speed (e.g. by setting values to arbitrate the current commandlimits to effectively disables the regenerative current limiting resultswhen the motor speed is within the threshold(s)).

FIG. 6 depicts example graphs of regenerative current limit based motorcurrent limit values obtained by solving for the final motor currentcommand f(i_(m))=0 in multiple example scenarios. It should be notedthat the graphs depicted are for examples, and that in one or moreexamples, with varying operating settings and/or parameters of the motorcontrol system, the solutions can be different than those depicted. InFIG. 6, the graph 610 illustrates solution of f(i_(m))=0 versus ω_(m)for multiple regenerative current limit values. The larger curvescorrespond to smaller values of I_(blim). As depicted in the plots in610, the solution to f(i_(m))=0 are to be determined only above aspecific motor speed threshold ω_(m0).

Further, graph 620 depicts plots of f(i_(m)) versus i_(m) for a givenI_(blim) at multiple motor speeds (quadrant 2 considered only in theillustration). As can be seen f(i_(m)) is only negative for some valuesof currents, above the speed threshold. For instance, in the plots in620, f(i_(m))=0 has only one valid root at a threshold motor velocityω_(m0). Thus, the value of ω_(m0) is calculated first and compared tothe operating speed ω_(m) of the motor 56 in order to determine whetherany limiting is to be done at all. Alternatively, in one or moreexamples, the value of f(i_(m), ω_(m)) may be calculated at theoperating speed ω_(m) for the entire range of i_(m) values, and if theresult is always positive, then no further calculations, and thuslimiting, are performed.

Although the above solutions improve the performance of the motorcontrol system by limiting the regenerative current, the computations toobtain the exact solutions to the above equations can be computationallycomplex, and in one or more examples, may not be performed in real-time.The technical solutions herein facilitate improving the performance ofthe motor control system by using approximations to determine theregenerative current limit based motor current limits dynamically.

For example, to determine the regenerative current limit based motorcurrent limits, the motor control system uses the following expressionfor the brush drop voltage.v _(B) =gV ₀where g is either 0, −1 or −1. Thus, f(i_(m)) becomes a pseudo-quadraticequation, whose roots are given by the following expression.

$i_{m} = {{{- \frac{\left( {{K_{e}\omega_{m}} + v_{B}} \right)}{2\; R_{m}}} \pm \sqrt{\left( \frac{{K_{e}\omega_{m}} + v_{B}}{2\; R_{m}} \right)^{2} - \frac{{V_{ECU}I_{blim}} + {R_{c}I_{blim}^{2}}}{R_{m}}}} = {{- \frac{\left( {{K_{e}\omega_{m}} + v_{B}} \right)}{2\; R_{m}}} \pm \sqrt{D}}}$

The above equation has valid roots only when D>0. However, because Ddepends on the value of I_(blim) and the motor speed ω_(m), D>0 may notalways be true. The value of speed at which D=0 is the threshold speedω_(m0) and thus may be obtained by back solving as follows.

$\omega_{m\; 0} = \frac{{- v_{B}} \pm {2\sqrt{R_{m}\left( {{V_{ECU}I_{blim}} + {R_{c}I_{blim}^{2}}} \right)}}}{K_{e}}$D(ω_(m 0)) = 0

It has to be ensured that the approximate threshold speed ω_(m0) islarger in magnitude than the true value (exact solution), because forthe same I_(blim) value, the roots exist at higher magnitudes ofvelocity, but not at lower values (see graph 610). Thus, the value of gis set to +1 and −1 for positive and negative motor speeds respectively.The final threshold motor speed calculations are as follows.

$\omega_{m\; 0} = \frac{\pm \left( {V_{0} + {2\sqrt{R_{m}\left( {{V_{ECU}I_{blim}} + {R_{c}I_{blim}^{2}}} \right)}}} \right)}{K_{e}}$

Alternatively, in one or more examples, the approximation may be tocompute a base motor speed threshold magnitude and then artificiallyinflating the value to ensure valid roots of f(i_(m))=0. This may bemathematically expressed as follows.

$\omega_{m\; 0} = {{{\pm \left( {1 + k} \right)}\omega_{m\; 0\; b}} = {{\pm \left( {1 + k} \right)}\left( \frac{\sqrt{2\;{R_{m}\left( {{V_{ECU}I_{blim}} + {R_{c}I_{blim}^{2}}} \right)}}}{K_{e}} \right)}}$where k is a calibratable scalar between 0 and 1 used for inflating themotor speed threshold values.

Next, the value of operating motor speed is compared to the thresholdmotor speed, and the decision for whether the regenerative current limitbased motor current limits is to be calculated is made as mentionedbefore (FIG. 5). If the motor current limits are to be computed, andbecause solutions are guaranteed based on the above checks, the motorcurrent limit values are computed by solving the above equations usingdifferent techniques. For example, as described if the most accuratesolution is desired, an iterative solver such as the bisection method tocalculate the four roots of f(i_(m))=0 at the current operating motorspeed. For the bisection method, the end points (motor current values)within which the roots are guaranteed to exist are determined. The tworoots in the negative speed (quadrant 2) region will lie between +∞ and0. The middle point i_(xn) may be selected to be the value of currentlying on the straight line that passes through the origin and speedthreshold value −ω_(m0) at the operating speed ω_(m). This is expressedmathematically below for computing the i_(xn) value.

$i_{xn} = \frac{{K_{e}\omega_{m}} + V_{0}}{2\; R_{m}}$

Thus, the two negative speed roots will lie between (0, i_(xn)] and[i_(xn), +∞). Similarly, the two roots in positive speed region will liebetween [i_(xp), 0) and (−∞, i_(xp)] where i_(xp) is given below.

$i_{xp} = {- \frac{{K_{e}\omega_{m}} + V_{0}}{2\; R_{m}}}$

In one or more examples, the convergence may be achieved faster byselecting smaller end points. For instance, instead of using ±∞, thevalue of motor currents required for −I_(blim) (or even 0) may be usedinstead. Further, the values of i_(xp)/i_(xp) may be artificiallyinflated and reduced appropriately to i′_(xn)/i′_(xp) respectively andused for the end points by using a scale factor h between 0 and 1 asexpressed below.i′ _(xp)=(1±h)i _(xp)i′ _(xn)=(1±h)i _(xn)

Further, as described earlier, in one or more examples, instead of usinga (computationally complex) iterative solver, a quadratic equation couldbe solved to determine the roots of f(i_(m)). For instance, for negativespeeds, the two roots i_(rnu) and i_(rnl) (upper and lower valuesrespectively) may be obtained as follows.

$i_{rnu} = {{- \frac{\left( {{K_{e}\omega_{m}} + {a_{n}V_{0}}} \right)}{2\; R_{m}}} + \sqrt{\left( \frac{\left( {{K_{e}\omega_{m}} + {a_{n}V_{0}}} \right)}{2\; R_{m}} \right)^{2} - \frac{{V_{ECU}I_{blim}} + {R_{c}I_{blim}^{2}}}{R_{m}}}}$$i_{rnl} = {{- \frac{\left( {{K_{e}\omega_{m}} + {a_{n}V_{0}}} \right)}{2\; R_{m}}} - \sqrt{\left( \frac{\left( {{K_{e}\omega_{m}} + {a_{n}V_{0}}} \right)}{2\; R_{m}} \right)^{2} - \frac{{V_{ECU}I_{blim}} + {R_{c}I_{blim}^{2}}}{R_{m}}}}$where a_(n) may be set to +1 or −1 respectively in the regenerativecurrent limiting. Note that in other examples, a_(n) may be set todifferent values to be more/less conservative to facilitate more/lessviolation of the regenerative current limits being imposed inconsideration of OEM's limits.

Similarly, for positive speeds, the two roots i_(rpu) and i_(rpl) (upperand lower values respectively) may be obtained as follows.

$i_{rpu} = {{- \frac{\left( {{K_{e}\omega_{m}} + {a_{p}V_{0}}} \right)}{2\; R_{m}}} + \sqrt{\left( \frac{\left( {{K_{e}\omega_{m}} + {a_{p}V_{0}}} \right)}{2\; R_{m}} \right)^{2} - \frac{{V_{ECU}I_{blim}} + {R_{c}I_{blim}^{2}}}{R_{m}}}}$$i_{rpl} = {{- \frac{\left( {{K_{e}\omega_{m}} + {a_{p}V_{0}}} \right)}{2\; R_{m}}} - \sqrt{\left( \frac{\left( {{K_{e}\omega_{m}} + {a_{p}V_{0}}} \right)}{2\; R_{m}} \right)^{2} - \frac{{V_{ECU}I_{blim}} + {R_{c}I_{blim}^{2}}}{R_{m}}}}$where a_(p) is selected to be −1 and +1 or other predetermined values tobe more or less conservative based on OEM limits.

After the regenerative current limit based motor current limit valueshave been determined, these values are compared against (arbitratedwith) other power management requirement limits (such as supply currentlimits) and finally limited to machine capability, to compute the finalmotor current command i_(r), which is then sent to the current regulator54.

FIG. 7 depicts an example system 50 for limiting regenerative currentlimit based motor current limits according to one or more embodiments.Apart from the components described earlier (FIG. 2), the illustrationdepicts a current command arbitration module 82, and a regenerativecurrent limiting module 70. The regenerative current limiting module 70computes the motor current limits for limiting the regenerative currentusing one or more techniques described herein. In the motor controlmethod, a regenerative current limiting module 70 receives aregenerative current limit value (i_(blim)) and calculates motor currentlimits i_(rpu), i_(rpl), i_(rnu), and i_(rnl) as described above. Theregenerative current limiting module 70 may compute the results usingthe iterative solver or the approximation techniques described herein.The regenerative current limit based motor current limits are forwardedto the current command arbitration module 82.

The current command arbitration module 82 compares the regenerativecurrent limit based motor current limits received and arbitrates thelimits to be set for the current command i_(r)*. The current commandarbitration module 82 forwards a limited current command i_(r)′ to thecurrent capability limiting module 64, the i_(r)′ based on thearbitration for the regenerative current limiting.

The current capability limiting module 64 generates the current command(i_(r)) that is used by the current regulator 54 to provide a voltagecommand to the motor 56. In one or more examples, the motor currentlimits from the regenerative limiting module 70 and the supply currentlimiting module 90 are input to the current command arbitration module82 as pre-limits. The current capability module 64 may further limit themotor current command to a current value calculated (not shown) by thecurrent capability limiting module 64 based on motor capability.

In one or more examples, the regenerative current limiting module 70implements the aforementioned equations to obtain the motor currentlimits i_(rpu), i_(rpl), i_(rnu), and i_(rnl) values. In one or moreexamples, the values are computed in regions where the power-flowequation of the motor control system can be satisfied, for example inthe positive and negative quadrants. The computed values are input tothe current command arbitration module 82 or other suitable component ormodule.

In one embodiment, an estimate of the controller input resistance(R_(c)) is used to generate the current limit signal (i_(r)′). Anaccurate estimate may be obtained by estimating the resistance in theappropriate part of the control system. However, if very accurate supplycurrent limiting is not required, an overestimated high fixed value ofR_(c) may be chosen in order to be conservative.

It is noted that the limits imposed as described herein (such as aregenerative current limit) may be a calibration, a continuously orperiodically changing signal or a function of other signals (e.g.,voltage). It is also noted that the algorithms and methods describedherein may be implemented as a software solution that is executed by aprocessor, such as the control module 40.

It should be noted that, although the current capability module 64 isshown as using all of the externally provided limits, the motor currentlimits and the motor capability limit, embodiments described herein arenot so limited. The current capability module 64 or other suitableprocessor can limit or adjust a current command based on one or more ofthe above-described limits.

FIG. 8 depicts an example system 50 for limiting regenerative currentlimit based motor current limits according to one or more embodiments.In one or more examples, the regenerative current limiting module 70includes a velocity threshold submodule 72 that determines the motorthreshold ω_(m0) values to be used during the computations. Further, theregenerative current limiting module 70 includes a motor current limitcomputation submodule 74 that computes the i_(rpu), i_(rpl), i_(rnu),and i_(rnl) values as described above. The motor current limitcomputation submodule 74 may compute the results using the iterativesolver or the approximation techniques described herein. Theregenerative current limit based motor current limits are forwarded tothe current command arbitration module 82. The other components operatein the same manner as described herein (see FIG. 7).

FIG. 9 depicts an example system 50 for limiting regenerative currentlimit based motor current limits according to one or more embodiments.Apart from the components described earlier (FIG. 7), the illustrationdepicts a supply current limiting module 90, and an external currentlimiting module 95. The current command arbitration module 82 receives,apart from the motor current limits i_(rpu), i_(rpl), i_(rnu), andi_(rnl) from the regenerative current limiting module 70, otherdynamically computed current command limits. For example, the currentcommand arbitration module 82 receives supply current limits from thesupply current limiting module 90. For example, the supply currentlimits may include limits to be set to protect the power source, such asbattery. The current command arbitration module 82 further receivesexternal current limits from the external current limiting module 95.

The current command arbitration module 82 compares the various currentcommand limits received and arbitrates the limits to be set for thecurrent command i_(r)*. The current command arbitration module 82forwards a limited current command i_(r)′ to the current capabilitylimiting module 64, the i_(r)′ based on the arbitration for theregenerative current limiting and the supply current limiting, amongothers. The current capability limiting module 64 generates the currentcommand (i_(r)) that is used by the current regulator 54 to provide avoltage command to the motor 56. In one or more examples, the motorcurrent limits from the regenerative limiting module 70 and the supplycurrent limiting module 90 are input to the current command arbitrationmodule 82 as pre-limits. The current capability module 64 may furtherlimit the motor current command to a current value calculated (notshown) by the current capability limiting module 64 based on motorcapability. The other components operate in the same manner as describedherein (see FIG. 7).

Embodiments described herein provide a number of benefits and technicaleffects. Embodiments provide effective techniques for determining limitsfor regenerative current draw, and imposing the limits for an EPS orother system that utilizes a DC motor, which are important forprotecting a battery or other power source.

While the invention has been described in detail in connection with onlya limited number of embodiments, it should be readily understood thatthe invention is not limited to such disclosed embodiments. Rather, theinvention can be modified to incorporate any number of variations,alterations, substitutions or equivalent arrangements not heretoforedescribed, but which are commensurate with the spirit and scope of theinvention. Additionally, while various embodiments of the invention havebeen described, it is to be understood that aspects of the invention mayinclude only some of the described embodiments. Accordingly, theinvention is not to be seen as limited by the foregoing description.

Having thus described the invention, it is claimed:
 1. A control systemcomprising: a current command module configured to receive a torquecommand and output a current command for controlling a brushed directcurrent (DC) motor; and a regenerative current limiting moduleconfigured to receive a regenerative current limit as an input andactively compute a motor current limit based on a non-linear function ofthe regenerative current limit, the regenerative current limit moduleconfigured to limit the motor current command to the brushed DC motorbased on the motor current limit.
 2. The system of claim 1, furthercomprising a current regulator configured to apply a voltage to thebrushed DC motor based on the limited current command.
 3. The system ofclaim 1, wherein the regenerative current limiting module is configuredto compute the motor current command based on a voltage loop defined bya motor control system and the brushed DC motor.
 4. The system of claim1, therein the regenerative current limiting module is furtherconfigured to determine a motor speed of the brushed DC motor andcompute the motor current limit in response to the motor speed not beingwithin a specific range.
 5. The system of claim 1, wherein the brushedDC motor is a permanent magnet brushed DC motor.
 6. A method ofcontrolling a brushed direct current (DC) motor, the method comprising:receiving a torque command and outputting a current command forcontrolling the brushed DC motor; receiving a regenerative current limitas an input; active computing, by a regenerative current limitingmodule, a motor current limit based on a non-linear function of theregenerative current limit; and limiting the motor current command basedon the motor current limit.
 7. The method of claim 6, further comprisingapplying, by a current regulator, a voltage to the brushed DC motorbased on the limited current command.
 8. The method of claim 6, whereinthe motor current command is computed based on power-flow equations of amotor control system.
 9. The method of claim 6, wherein the methodfurther comprises determining a motor speed of the DC motor and themotor current limit is computed in response to the motor speed not beingwithin a specific range.
 10. The method of claim 7, wherein the brushedDC motor is a permanent magnet brushed DC motor.